$(function () {

  var currentPage = 1;
  var pageSize = 5;

  // 1-获取数据渲染页面
  function render() {
    $.ajax({
      url: '/category/querySecondCategoryPaging',
      data: {
        page: currentPage,
        pageSize: pageSize
      },
      dataType: 'json',
      success: function (info) {
        // console.log(info);
        $('tbody').html(template('tmp', info));
        setPage(info.total)
      }
    })
  }
  render();

  // 2-分页
  function setPage(total) {
    $("#pagintor").bootstrapPaginator({
      bootstrapMajorVersion: 3,//默认是2，如果是bootstrap3版本，这个参数必填
      currentPage: currentPage,//当前页
      totalPages: Math.ceil(total / pageSize),//总页数
      size: "small",//设置控件的大小，mini, small, normal,large
      onPageClicked: function (event, originalEvent, type, page) {
        //为按钮绑定点击事件 page:当前点击的按钮值
        currentPage = page;
        render();
      }
    });
  }

  // 3-填充下拉菜单
  $.ajax({
    url: '/category/queryTopCategoryPaging',
    data: {
      page: currentPage,
      pageSize: 99
    },
    dataType: 'json',
    success: function (info) {
      // console.log(info);
      $('.cate-list').html(template('tmp-cate', info))
    }
  })

  // 4-点击下拉选择项，获取值，赋值按钮
  $('.cate-list').on('click', 'a', function () {
    // 把当前a标签文字赋值给按钮
    $('.title-text').text($(this).text());
    // 把id赋值给隐藏域
    $('[name="categoryId"]').val($(this).data('id'));
    // 选中一级状态后，把状态失败改为成功
    $('#form1').data('bootstrapValidator').updateStatus('categoryId','VALID')
  })

  // 5-单独上传图片到服务器
  $("#file").fileupload({
    dataType: "json",
    //e：事件对象
    //data：图片上传后的对象，通过data.result.picAddr可以获取上传后的图片地址
    done: function (e, data) {
      console.log(data.result.picAddr);
      var url = data.result.picAddr;
      //根据图片地址实现 图片预览
      $('#img').attr('src', url);
      // 把图片服务器保存地址 赋值给隐藏， 
      $('[name="brandLogo"]').val(url);
      // 图片状态
      $('#form1').data('bootstrapValidator').updateStatus('brandLogo','VALID')
    }
  });

  
    //6-添加分类的表单验证
    $('#form1').bootstrapValidator({

      //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
      excluded: [],

      //2. 指定校验时的图标显示，默认是bootstrap风格
      feedbackIcons: {
          valid: 'glyphicon glyphicon-ok',
          invalid: 'glyphicon glyphicon-remove',
          validating: 'glyphicon glyphicon-refresh'
      },
      //3-字段
      fields: {
          categoryId: {
              validators: {
                  notEmpty: {
                      message: '请选择一级分类'
                  }
              }
          },
          brandName: {
              validators: {
                  notEmpty: {
                      message: '请输入二级分类'
                  }
              }
          },
          brandLogo: {
              validators: {
                  notEmpty: {
                      message: '请选择图片'
                  }
              }
          },
      }
  });


  // 7-提交表单数据
  $("#form1").on('success.form.bv', function (e) {
    e.preventDefault();
    //使用ajax提交逻辑s
    
    $.ajax({
      url: '/category/addSecondCategory',
      type: 'post',
      data: $('#form1').serialize(),
      dataType: 'json',
      success: function (info) {
        console.log(info);
        $('.modal-two').modal('hide');
        // 渲染数据
        currentPage = 1;
        render();
        // 重置数据
        $('#form1').data('bootstrapValidator').resetForm(true);
        // 重置分类 图片
        $('.title-text').text('请选择一级分类');
        $('#img').attr('src','./images/none.png'); 
      }
    })
  });
})